import static com.googlecode.javacv.cpp.opencv_highgui.CV_LOAD_IMAGE_COLOR;
import static com.googlecode.javacv.cpp.opencv_highgui.cvSaveImage;
import static com.googlecode.javacv.cpp.opencv_imgproc.CV_MEDIAN;
import static com.googlecode.javacv.cpp.opencv_imgproc.cvSmooth;
import static opencvtest.OpenCVUtils.loadAndShowOrExit;
import static opencvtest.OpenCVUtils.show;
import static opencvtest.OpenCVUtils.toIplROI;

import java.awt.Rectangle;
import java.io.File;

import com.googlecode.javacv.cpp.opencv_core;
import com.googlecode.javacv.cpp.opencv_core.IplImage;

/**    
 * 文件名：JavaCvGaosi.java    
 *    
 * 版本信息：    
 * 日期：2014年3月17日    
 * xyj 足下 xyj 2014     
 * 版权所有    
 *    
 */

/**
 * @项目名称：opencv-test
 * @类名称：JavaCvGaosi
 * @类描述：
 * @创建人：zhuyi
 * @创建时间：2014年3月17日 上午10:34:01
 * @修改人：zhuyi
 * @修改时间：2014年3月17日 上午10:34:01
 * @修改备注：
 * @version
 * 
 */
public class JavaCvGaosi {

    public static void main(String[] args) {

        opencv_core.IplImage image = loadAndShowOrExit(new File("w2.jpg"), CV_LOAD_IMAGE_COLOR);

        Rectangle rect = new Rectangle(100, 100, 110, 32);
        // show(drawOnImage(image, rect, Color.RED), "Input template");
        IplImage roiImage = image.roi(toIplROI(rect));

        cvSmooth(roiImage, image, CV_MEDIAN, 9, 9, 0, 0);

        image.roi(null);
        show(image, "gaosi image");
        cvSaveImage("w2-gs.jpg", image);

    }
}
